package org.linlinjava.litemall.db.domain;

import lombok.Data;
import lombok.Builder;
import lombok.experimental.Accessors;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import lombok.NoArgsConstructor;
import lombok.AllArgsConstructor;

/**
 * 订单实体类（对应order表）
 * 用于存储订单的基本信息，包括订单号、用户信息、金额等
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
public class Order2 {
    /**
     * 订单ID，主键
     */
    private Long id;

    /**
     * 订单编号，唯一标识
     */
    private String orderNo;

    /**
     * 下单用户ID
     */
    private Long userId;

    /**
     * 供应商公司ID
     */
    private Long supplierCompanyId;

    /**
     * 采购方公司ID
     */
    private Long buyerCompanyId;

    /**
     * 订单总金额
     */
    private BigDecimal totalAmount;

    /**
     * 应付金额（总金额 + 运费）
     */
    private BigDecimal payableAmount;

    /**
     * 支付方式（如：微信支付、支付宝等）
     */
    private String paymentMethod;

    /**
     * 订单状态
     * 可能的值包括：待付款、已付款、已发货、已完成等
     */
    private Integer orderStatus;

    /**
     * 订单创建时间
     */
    private LocalDateTime createTime;

    /**
     * 订单更新时间
     */
    private LocalDateTime updateTime;
} 